<?php
/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

namespace TodoList;

use \TodoList\Model\Todo;
use \TodoList\Util\Utils;

//~ Template for detail.php
// variables:
//  $todo - TODO to be displayed
//  $tooLate - if the task should have been done already

/* @var $todo Todo */
?>

<h1>
    <?php if ($tooLate): ?>
        <i class="material-icons error" title="Should be already done!">error</i>
    <?php endif; ?>
    <?php echo Utils::escape($todo->getTitle()); ?>
</h1>

<table class="detail">
    <tr>
        <th>Priority</th>
        <td><?php echo Utils::iconPriority($todo->getPriority()); ?></td>
    </tr>
    <tr>
        <th>Created On</th>
        <td><?php echo Utils::escape(Utils::formatDateTime($todo->getCreatedOn())); ?></td>
    </tr>
    <tr>
        <th>Due On</th>
        <td>
            <?php if ($tooLate): ?><span class="too-late"><?php endif; ?>
            <?php echo Utils::escape(Utils::formatDateTime($todo->getDueOn())); ?>
            <?php if ($tooLate): ?></span><?php endif; ?>
        </td>
    </tr>
    <tr>
        <th>Last Modified On</th>
        <td><?php echo Utils::escape(Utils::formatDateTime($todo->getLastModifiedOn())); ?></td>
    </tr>
    <tr>
        <th>Description</th>
        <td><?php echo Utils::escape($todo->getDescription()); ?></td>
    </tr>
    <tr>
        <th>Comment</th>
        <td><?php echo Utils::escape($todo->getComment()); ?></td>
    </tr>
    <tr>
        <th>Status</th>
        <td><?php echo Utils::iconStatus($todo->getStatus()); ?></td>
    </tr>
    <tr>
        <td colspan="2">&nbsp;</td>
    </tr>
    <tr>
        <th></th>
        <td>
            <div class="statuses">
            <?php foreach (Todo::allStatuses() as $status): ?>
                <?php if ($status != $todo->getStatus()): ?>
                    <a href="<?php echo Utils::createLink('change-status', ['id' => $todo->getId(), 'status' => $status]); ?>" title="Change TODO status to <?php echo Utils::capitalize($status); ?>."
                       class="change-status-link" title="Make it <?php echo Utils::capitalize($status); ?>"
                       ><?php echo Utils::iconStatus($status, false, false); ?></a>
                <?php else: ?>
                    <span title="This TODO is already <?php echo Utils::capitalize($status); ?>.">
                        <?php echo Utils::iconStatus($status, true, false); ?>
                    </span>
                <?php endif; ?>
            <?php endforeach; ?>
            </div>
            <div class="actions">
                <a href="<?php echo Utils::createLink('add-edit', ['id' => $todo->getId()]); ?>" title="Edit it."><i class="material-icons multi">edit</i></a>
                <a href="<?php echo Utils::createLink('delete', ['id' => $todo->getId()]); ?>" id="delete-link" title="Delete it."><i class="material-icons multi">delete</i></a>
            </div>
        </td>
    </tr>
</table>

<p>
    <a href="<?php echo Utils::createLink('list', ['status' => $todo->getStatus()]); ?>" title="Back to the list."
       ><i class="material-icons">fast_rewind</i>To the list</a>
</p>

<div id="delete-dialog" title="Delete this TODO?">
    <p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>This TODO will be deleted. Are you sure?</p>
</div>
<div id="change-status-dialog">
    <form id="change-status-form" method="post">
        <fieldset>
            <div class="field">
                <label>Comment:</label>
                <textarea name="comment" cols="1" rows="1"></textarea>
            </div>
        </fieldset>
    </form>
</div>
